package by.apiskun.curex.dataaccess;

import java.util.List;

import by.apiskun.curex.datamodel.User;

public interface UserDAO extends AbstractDAO<Long, User> {

	Long getCount();

	List<User> getAllUsers();

	List<User> getAllUsersByFirstName(String firstName);

	List<User> getAllUsersByLastName(String lastName);

	List<User> getAllUsersByMidName(String midName);

	List<User> getAllUsersByFullName(String firstName, String midName,
			String lastName);

	void updateUserPassword(Long id, String newPassword);

	void updateUserPhoneNumber(Long id, String newPhoneNumber);

	void updateUserLock(Long id, Boolean newUserLock);

	User getUserByLogin(String login);
}